/**
 * File: main.c
 */

#include "common.h"
#include "linked_list.h"

int main(void)
{
  /* 新建节点 */
  LinkedListNode *n0 = init_linked_list_node(1);
  LinkedListNode *n1 = init_linked_list_node(3);
  LinkedListNode *n2 = init_linked_list_node(2);
  LinkedListNode *n3 = init_linked_list_node(5);
  LinkedListNode *n4 = init_linked_list_node(4);

  /* 构建节点的引用创建链表 */
  n0->next = n1;
  n1->next = n2;
  n2->next = n3;
  n3->next = n4;
  print_linked_list(n0);

  /* 插入节点*/
  LinkedListNode *p = init_linked_list_node(9);
  insert_item(n2, p);
  print_linked_list(n0);

  /* 删除节点 */
  remove_item(n0);
  print_linked_list(n0);

  /* 访问节点 */
  printf("\n%d\n", access_item(n0, 3)->value);

  /* 查找节点 */
  printf("\n%d\n", find_item(n0, 9));

  /* 销毁链表 */
  destory_linked_list(n0);

  return 0;
}
